﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.Reflection;

/// <summary>
/// Summary description for ControladorCambiarContraseña
/// </summary>
public class ControladorCambiarContraseña
{
    private static String dataMsg;
    private static String opMsg;
    private static String errorCode;

    public String getDataMsg()
    {
        return dataMsg;
    }

    public String getOpMsg()
    {
        return opMsg;
    }

    public String getErrorCode()
    {
        return errorCode;
    }


	public ControladorCambiarContraseña()
	{
		//
		// TODO: Add constructor logic here
		//
	}

    public void Comprobar(TextBox t)
    {
        errorCode = "";
        opMsg = " Las los campos Nueva Contraseña y Repetir Nueva Contraseña no coinciden";
        t.Text = "1";
        return;
    }



    public void CambioContraseña(String ContraseñaActual, String NuevaContraseña,String NombreUsuario, TextBox t)
    { 
        String Resultado;    
        ModeloCambiarContraseña model = new ModeloCambiarContraseña();
        model.setModel(ContraseñaActual, NuevaContraseña, NombreUsuario);

        Resultado = model.CambiarContraseña(NombreUsuario, ContraseñaActual);


        if (Resultado == "1")
        {
            errorCode = "1";
            opMsg = "La contraseña fue editada con exito '" ;
            // reflect to readonly property 
            PropertyInfo isreadonly = typeof(System.Collections.Specialized.NameValueCollection).GetProperty("IsReadOnly", BindingFlags.Instance | BindingFlags.NonPublic);

            // make collection editable 
            //isreadonly.SetValue(req.QueryString, false, null);
            // remove 
            //req.QueryString.Remove("n");
            // modify 
            //req.QueryString.Set("n", nombreBodega);
            // make collection readonly again 
           // isreadonly.SetValue(req.QueryString, true, null);
          //  MessageBox.Show("Weeeeena", "Exito", MessageBoxButtons.OK, MessageBoxIcon.Information);
            t.Text = "1";
            
            return;
        }
        else
        {
            if (Resultado == "-1")
            {
                errorCode = "";
                opMsg = "La contraseña Actual no esta correcta";
                t.Text = "1";
            }

            else
            {
                errorCode = "";
                opMsg = "Ocurrió un error al conectarse con la base de datos. Intente más tarde";
                //MessageBox.Show(opMsg, "Error", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                t.Text = "1";
                return;
            }
        }
    }

}
